/** typeof */
// https://www.typescriptlang.org/docs/handbook/2/typeof-types.html
// 一般不需要用在string、number、boolean这种简单的类型推断


type FFF = (x: unknown) => boolean;
type KK = ReturnType<FFF>; // boolean; 这里顺带看了下ReturnType的高级用法


function fff() {
    return {x: 10, y: 1}
}
// type PP = ReturnType<fff>; // 这里会报错，因为ReturnType是TS的用法，fff是一个js函数，是两个平行世界
type PP = ReturnType<typeof fff> // {x: number; y: number}；这才是正确的打开方式



type MapArr<T extends Array<unknown>> = T[number]
type M111 = MapArr<[123, ""]>
